package com.gency.subscribe.web.configuration.ini;

import com.alibaba.fastjson.serializer.SerializeConfig;
import com.alibaba.fastjson.support.config.FastJsonConfig;
import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;

import java.util.List;

import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

@Component
public class ResultConfig  extends WebMvcConfigurerAdapter{

	 @Override
	    public void configureMessageConverters(List<HttpMessageConverter<?>> converters)    {
	        super.configureMessageConverters(converters);
	        /*
	         * 1、需要先定义一个 convert 转换消息对象；
	         * 2、添加 fastJson 的配置信息，比如: 是否要格式化返回的Json数据；
	         * 3、在 Convert 中添加配置信息;
	         * 4、将 convert 添加到 converts 中;
	         */

	        //1、需要先定义一个 convert 转换消息对象；
	        FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();

	        //2、添加 fastJson 的配置信息，比如: 是否要格式化返回的Json数据；
	        FastJsonConfig fastJsonConfig = new FastJsonConfig();
//	        fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
	        fastJsonConfig.setSerializeConfig(SerializeConfig.getGlobalInstance());
	        FastJosnSerializerKit.init();
	        //3、在 Convert 中添加配置信息;
	        fastConverter.setFastJsonConfig(fastJsonConfig);

	        //4、将 convert 添加到 converts 中;
	        converters.add(fastConverter);

	    }
}
